package com.qzsoft.system.repository.sys.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.qzsoft.jeemis.common.entity.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import java.io.Serializable;
import java.util.Date;

/**
 * (SysDeptJob)表实体类
 *
 * @author yzz
 * @since 2020-07-30 09:42:30
 */
@ApiModel(value = "")
@Data
@EqualsAndHashCode(callSuper = false)
@NoArgsConstructor
@AllArgsConstructor
@Builder
@ToString
@TableName("sys_dept_job")
public class SysDeptJobEntity {
    private static final long serialVersionUID = -10903675043506308L;

    /**
     * 主键
     */
    @TableId(type= IdType.UUID)
    @ApiModelProperty(value = "主键")
    private String id;

    /**
     * deptId
     */
    @ApiModelProperty(value = "deptId")
    private String deptId;

    /**
     * deptName
     */
    @ApiModelProperty(value = "deptName")
    private String deptName;

    /**
     * deptCode
     */
    @ApiModelProperty(value = "deptCode")
    private String deptCode;

    /**
     * jobName
     */
    @ApiModelProperty(value = "jobName")
    private String jobName;

    /**
     * jobCode
     */
    @ApiModelProperty(value = "jobCode")
    private String jobCode;

    /**
     * companyId
     */
    @ApiModelProperty(value = "companyId")
    private String companyId;

    /**
     * companyCode
     */
    @ApiModelProperty(value = "companyCode")
    private String companyCode;

    /**
     * companyName
     */
    @ApiModelProperty(value = "companyName")
    private String companyName;

    /**
     * sort
     */
    @ApiModelProperty(value = "sort")
    private Integer sort;

    /**
     *删除标识
     */
    @ApiModelProperty(value = "删除标识")
    @TableLogic
    private Integer hasDelete;

    /**
     *创建者
     */
    @ApiModelProperty(value = "创建者")
    @TableField(fill = FieldFill.INSERT)
    private Long creator;
    /**
     *创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private Date createDate;
    /**
     *更新者
     */
    @ApiModelProperty(value = "更新者")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Long updater;

    /**
     *更新时间
     */
    @ApiModelProperty(value = "更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateDate;

    /**
     * 获取主键值
     *
     * @return 主键值
     */
    protected Serializable pkVal() {
        return this.id;
    }
}